<?xml version="1.0" encoding="UTF-8"?>
<!--
 This Source Code Form is subject to the terms of the Mozilla Public
 License, v. 2.0. If a copy of the MPL was not distributed with this
 file, You can obtain one at http://mozilla.org/MPL/2.0/.
-->
<!DOCTYPE html [
  <!ENTITY % htmlDTD PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
  %htmlDTD;
  <!ENTITY % netErrorDTD SYSTEM "chrome://global/locale/netError.dtd">
  %netErrorDTD;
  <!ENTITY % globalDTD SYSTEM "chrome://global/locale/global.dtd">
  %globalDTD;
  <!ENTITY % browserDTD SYSTEM "chrome://browser/locale/browser.dtd">
  %browserDTD;
  <!ENTITY basePBMenu.label   "<span class='appMenuButton'>&brandShortName;</span><span class='fileMenu'>&fileMenu.label;</span>">
  <!ENTITY % privatebrowsingpageDTD SYSTEM "chrome://browser/locale/aboutPrivateBrowsing.dtd">
  %privatebrowsingpageDTD;
]>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link rel="stylesheet" href="chrome://global/skin/netError.css" type="text/css" media="all"/>
    <link rel="stylesheet" href="chrome://browser/skin/aboutPrivateBrowsing.css" type="text/css" media="all"/>
    <style type="text/css"><![CDATA[
      body.normal .showPrivate,
      body.private .showNormal {
        display: none;
      }
      body.appMenuButtonVisible .fileMenu {
        display: none;
      }
      body.appMenuButtonInvisible .appMenuButton {
        display: none;
      }
    ]]></style>
    <script type="application/javascript;version=1.7"><![CDATA[
      const Cc = Components.classes;
      const Ci = Components.interfaces;

      Components.utils.import("resource://gre/modules/PrivateBrowsingUtils.jsm");

      if (!PrivateBrowsingUtils.isWindowPrivate(window)) {
        document.title = "]]>&privatebrowsingpage.title.normal;<![CDATA[";
        setFavIcon("chrome://global/skin/icons/question-16.png");
      } else {
        document.title = "]]>&privatebrowsingpage.title;<![CDATA[";
        setFavIcon("chrome://browser/skin/Privacy-16.png");
      }

      var mainWindow = window.QueryInterface(Ci.nsIInterfaceRequestor)
                             .getInterface(Ci.nsIWebNavigation)
                             .QueryInterface(Ci.nsIDocShellTreeItem)
                             .rootTreeItem
                             .QueryInterface(Ci.nsIInterfaceRequestor)
                             .getInterface(Ci.nsIDOMWindow);

      // Focus the location bar
      mainWindow.focusAndSelectUrlBar();

      function setFavIcon(url) {
        var icon = document.createElement("link");
        icon.setAttribute("rel", "icon");
        icon.setAttribute("type", "image/png");
        icon.setAttribute("href", url);
        var head = document.getElementsByTagName("head")[0];
        head.insertBefore(icon, head.firstChild);
      }

      document.addEventListener("DOMContentLoaded", function () {
        if (!PrivateBrowsingUtils.isWindowPrivate(window)) {
          document.body.setAttribute("class", "normal");
        }

        // Set up the help link
        let moreInfoURL = Cc["@mozilla.org/toolkit/URLFormatterService;1"].
                          getService(Ci.nsIURLFormatter).
                          formatURLPref("app.support.baseURL");
        let moreInfoLink = document.getElementById("moreInfoLink");
        if (moreInfoLink)
          moreInfoLink.setAttribute("href", moreInfoURL + "private-browsing");

        // Show the correct menu structure based on whether the App Menu button is
        // shown or not.
        var menuBar = mainWindow.document.getElementById("toolbar-menubar");
        var appMenuButtonIsVisible = menuBar.getAttribute("autohide") == "true";
        document.body.classList.add(appMenuButtonIsVisible ? "appMenuButtonVisible" :
                                                             "appMenuButtonInvisible");
      }, false);

      function openPrivateWindow() {
        mainWindow.OpenBrowserWindow({private: true});
      }
    ]]></script>
  </head>

  <body dir="&locale.dir;"
        class="private">

    <!-- PAGE CONTAINER (for styling purposes only) -->
    <div id="errorPageContainer">

      <!-- Error Title -->
      <div id="errorTitle">
        <h1 id="errorTitleText" class="showPrivate">&privatebrowsingpage.title;</h1>
        <h1 id="errorTitleTextNormal" class="showNormal">&privatebrowsingpage.title.normal;</h1>
      </div>

      <!-- LONG CONTENT (the section most likely to require scrolling) -->
      <div id="errorLongContent">

        <!-- Short Description -->
        <div id="errorShortDesc">
          <p id="errorShortDescText" class="showPrivate">&privatebrowsingpage.perwindow.issueDesc;</p>
          <p id="errorShortDescTextNormal" class="showNormal">&privatebrowsingpage.perwindow.issueDesc.normal;</p>
        </div>

        <!-- Long Description -->
        <div id="errorLongDesc">
          <p id="errorLongDescText">&privatebrowsingpage.perwindow.description;</p>
        </div>

        <!-- Start Private Browsing -->
        <div id="startPrivateBrowsingDesc" class="showNormal">
          <button xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
                  id="startPrivateBrowsing" label="&privatebrowsingpage.openPrivateWindow.label;"
                  accesskey="&privatebrowsingpage.openPrivateWindow.accesskey;"
                  oncommand="openPrivateWindow();"/>
        </div>

        <!-- Footer -->
        <div id="footerDesc">
          <p id="footerText" class="showPrivate">&privatebrowsingpage.howToStop3;</p>
          <p id="footerTextNormal" class="showNormal">&privatebrowsingpage.howToStart3;</p>
        </div>

        <!-- More Info -->
        <div id="moreInfo" class="showPrivate">
          <p id="moreInfoText">
            &privatebrowsingpage.moreInfo;
          </p>
          <p id="moreInfoLinkContainer">
            <a id="moreInfoLink" target="_blank">&privatebrowsingpage.learnMore;</a>
          </p>
        </div>
      </div>
    </div>

  </body>
</html>
